This invention relates to serial communication between electronic devices. More particularly, this invention relates to multi-protocol serial interface drivers.
Communication between electronic devices, such as, for example, computer processors, modems, network controllers, disk drives, and printers, is accomplished by transmitting information (e.g., data and control signals) either serially or in parallel. Serial communication involves the sequential transmission of data bits across a single conductor, while parallel communication involves the simultaneous transmission of multiple data bits across separate, parallel conductors. Although parallel communication is faster than serial communication, the notably higher cost of parallel cable generally limits parallel communication to devices that are in close proximity to each other, such as, for example, a computer and a nearby printer. Accordingly, most electronic communication is accomplished serially.
Information is typically transmitted in an encoded sequence of binary signals (i.e., logical 1's and logical 0's). To properly interpret such signals, communicating devices must be able to equate the particular voltage level of each transmitted signal with a logical 1 or logical 0. Thus compatibility between communicating devices is needed to ensure that each device properly receives the transmitted information. Otherwise, for example, if one device sends data with logical 1's and 0's at voltages of +/-2 volts, respectively, and the receiving device expects logical 1's and 0's at voltages of +/-8 volts, respectively, the transmitted information will be lost.
To prevent such difficulties, electrical interface standards were developed. These standards provide electrical specifications, known as protocol, which specify the formats (e.g., the voltage levels) for signals transmitted between communicating devices. Thus, if each device adheres to the same standard, the devices can exchange information.
Over the years, however, many standards evolved to cover either broad areas of information transmission or unique requirements in specific applications. For example, in the United States, the Electronics Industries Association (EIA) developed a number of different standards, such as, for example, RS-232, RS-422, and RS-423. Similarly in Europe, the Comite Consultif Internationale Telegraphique et Telephone (International Consultative Committee for Telegraph and Telephone, or CCITT) also developed a number of different standards, such as, for example, V.10, V.11, V.28, and V.35. For the most part, the EIA and CCITT standards are compatible. For example, RS-422 is compatible with V.11, RS-232 is compatible with V.28, and RS-423 is compatible with V.10. These interface standards have been accepted generally by most manufacturers of electronic data transmission and business equipment.
For those cases in which a device needs to communicate with another device that either adheres to a different interface standard or has generally incompatible electrical signal parameters, an interface driver can be used to permit the devices to communicate. Interface drivers convert the signals from the transmitting device's format to the receiving device's format, thus permitting information to be exchanged.
If a device is to communicate with multiple other devices, two or more of which adhere to different interface standards, multiple interface drivers are needed. However, such multiple interface drivers either undesirably require manual switching of cables to connect the appropriate driver, or require cumbersome, expensive, and tedious-to-implement switching relay circuits that automatically select the appropriate interface driver. Furthermore, while some multi-protocol interface drivers have been developed that can conform signals selectably to more than one interface standard, typically, however, these multi-protocol interface drivers have difficulty properly conforming output signals to each standard, particularly, for example, the V.35 standard.
Proper adherence to the V.35 standard is best achieved with an interface driver that operates in current-mode. Current-mode operation refers to the driver's output current being substantially independent of output voltage. Known multi-protocol interface drivers, however, typically operate in voltage-mode, which refers to the driver's output voltage being substantially independent of output current.
Voltage-mode multi-protocol drivers that purport to adhere to the V.35 standard usually have difficulty doing so, because they cannot easily supply current at a constant enough level to meet the standard's specified voltage across a specified load. Current-mode drivers, in contrast, are designed to provide a constant current. Thus, maintaining a particular voltage across a specified load is more easily accomplished.
Furthermore, voltage-mode drivers cannot easily provide the standard's specified output impedance, because voltage-mode drivers inherently have low output impedance (100 ohms or less). Such low output impedance adversely affects the impedance typically provided by termination resistors. Termination resistors are needed to properly terminate the driven output line. Additionally, variations in manufacturing process (e.g., oxide thicknesses), operating temperature, and supply voltage cause the driver output impedance to vary, further increasing the difficulty of selecting appropriately valued termination resistors that will result in an equivalent impedance meeting the specification.
In contrast, current-mode drivers typically have very high output impedance, which has no substantial affect on the output impedance provided by termination resistors. Thus, termination resistors alone can be used to provide the standard's specified output impedance.
While the V.35 standard is strictly adhered to, for example, in Europe, the same has not been true in the United States. However, with the globalization of international telephone and computer networking communications, strict adherence to the V.35 standard will soon be required in the U.S. Thus a multiprotocol serial interface driver that strictly adheres to the V.35 standard will also soon be required. But, designing a mixed-mode (i.e., operation in both current-mode and voltage-mode) multi-protocol interface driver presents several difficulties.
In particular, because the output of such a driver is shared among different driver circuits, it is difficult to prevent the different circuits from interfering with each other. For example, it is very difficult to keep the driver circuits not currently in use from undesirably turning ON (i.e., conducting) when output voltages exceed the supply voltages.
Output voltages can exceed the supply voltages when, for example, an output line with multiple drivers is conforming an output signal to an interface standard that has high voltage swings, such as, for example, RS-232, which typically has swings of +/-8 volts while other drivers have a typical supply voltage of +5 volts. Variations in ground voltage and test equipment usage can also cause output voltages to exceed supply voltages.
Such large output voltages can force inherent well and substrate transistor diodes in the circuits into conduction, thus forcing those transistors into conduction. Accordingly, circuitry is needed to place and maintain the driver circuits not currently being used in a high impedance state.
In view of the foregoing, it would be desirable to provide a mixed-mode multi-protocol interface driver that can conform an output signal to one of a plurality of selectable electrical interface standards.
It would also be desirable to provide a mixed-mode multi-protocol interface driver that can operate selectably in current-mode, voltage-mode, or both.
It would further be desirable to provide a mixed-mode multi-protocol interface driver that can place and maintain portions of its circuitry in a high impedance state.